package rollercoaster.commons;

import java.util.ArrayList;
import java.util.List;

import rollercoaster.environment.interfaces.IModelReader;
import rollercoaster.environment.utils.ObjFace;

/**
 * Simple data structure containing all the information for a model, acquired by external objects.
 * @author nicolapellicano
 *
 */
public class DataModel implements IModelReader{
	
	ArrayList<Vertex3D> vertices;
	ArrayList<Vertex3D> normals;
	ArrayList<Vertex2D> textCoord;
	ArrayList<ObjFace> faces;
	
	public DataModel(){
		
	}

	public DataModel(ArrayList<Vertex3D> vertices, ArrayList<Vertex3D> normals,
			ArrayList<Vertex2D> textCoord, ArrayList<ObjFace> faces) {
		super();
		this.vertices = vertices;
		this.normals = normals;
		this.textCoord = textCoord;
		this.faces = faces;
	}

	public void setVertices(ArrayList<Vertex3D> vertices) {
		this.vertices = vertices;
	}

	public void setNormals(ArrayList<Vertex3D> normals) {
		this.normals = normals;
	}

	public void setTextCoord(ArrayList<Vertex2D> textCoord) {
		this.textCoord = textCoord;
	}

	public void setFaces(ArrayList<ObjFace> faces) {
		this.faces = faces;
	}

	public ArrayList<Vertex3D> getVertices() {
		return vertices;
	}

	public ArrayList<Vertex3D> getNormals() {
		return normals;
	}

	public ArrayList<Vertex2D> getTexCoord() {
		return textCoord;
	}

	public ArrayList<ObjFace> getFaces() {
		return faces;
	}
	
	
}
